<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GimpConfig-utils: GIMP 3 Config Library Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="GIMP 3 Config Library Reference Manual">
<link rel="up" href="pt01.html" title="Part I. GIMP Config Library">
<link rel="prev" href="libgimpconfig3-gimpconfig-register.html" title="gimpconfig-register">
<link rel="next" href="GimpConfigWriter.html" title="GimpConfigWriter">
<meta name="generator" content="GTK-Doc V1.33.0 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#libgimpconfig3-GimpConfig-utils.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="pt01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="libgimpconfig3-gimpconfig-register.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="GimpConfigWriter.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="libgimpconfig3-GimpConfig-utils"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="libgimpconfig3-GimpConfig-utils.top_of_page"></a>GimpConfig-utils</span></h2>
<p>GimpConfig-utils — Miscellaneous utility functions for libgimpconfig.</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="libgimpconfig3-GimpConfig-utils.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_proto_type">
<col class="functions_proto_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">GList</span> *
</td>
<td class="function_name">
<a class="link" href="libgimpconfig3-GimpConfig-utils.html#gimp-config-diff" title="gimp_config_diff ()">gimp_config_diff</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="libgimpconfig3-GimpConfig-utils.html#gimp-config-sync" title="gimp_config_sync ()">gimp_config_sync</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimpconfig3-GimpConfig-utils.html#gimp-config-reset-properties" title="gimp_config_reset_properties ()">gimp_config_reset_properties</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimpconfig3-GimpConfig-utils.html#gimp-config-reset-property" title="gimp_config_reset_property ()">gimp_config_reset_property</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="libgimpconfig3-GimpConfig-utils.html#gimp-config-string-append-escaped" title="gimp_config_string_append_escaped ()">gimp_config_string_append_escaped</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="libgimpconfig3-GimpConfig-utils.description"></a><h2>Description</h2>
<p>Miscellaneous utility functions for libgimpconfig.</p>
</div>
<div class="refsect1">
<a name="libgimpconfig3-GimpConfig-utils.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gimp-config-diff"></a><h3>gimp_config_diff ()</h3>
<pre class="programlisting"><span class="returnvalue">GList</span> *
gimp_config_diff (<em class="parameter"><code><span class="type">GObject</span> *a</code></em>,
                  <em class="parameter"><code><span class="type">GObject</span> *b</code></em>,
                  <em class="parameter"><code><span class="type">GParamFlags</span> flags</code></em>);</pre>
<p>Compares all properties of <em class="parameter"><code>a</code></em>
 and <em class="parameter"><code>b</code></em>
 that have all <em class="parameter"><code>flags</code></em>
 set. If
<em class="parameter"><code>flags</code></em>
 is 0, all properties are compared.</p>
<p>If the two objects are not of the same type, only properties that
exist in both object classes and are of the same value_type are
compared.</p>
<div class="refsect3">
<a name="gimp-config-diff.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>a</p></td>
<td class="parameter_description"><p>a <span class="type">GObject</span></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>b</p></td>
<td class="parameter_description"><p>another <span class="type">GObject</span> object</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>a mask of GParamFlags</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-config-diff.returns"></a><h4>Returns</h4>
<p>a GList of differing GParamSpecs. </p>
<p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GParamSpec]</span></p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-4.html#api-index-2.4">2.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-config-sync"></a><h3>gimp_config_sync ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gimp_config_sync (<em class="parameter"><code><span class="type">GObject</span> *src</code></em>,
                  <em class="parameter"><code><span class="type">GObject</span> *dest</code></em>,
                  <em class="parameter"><code><span class="type">GParamFlags</span> flags</code></em>);</pre>
<p>Compares all read- and write-able properties from <em class="parameter"><code>src</code></em>
 and <em class="parameter"><code>dest</code></em>

that have all <em class="parameter"><code>flags</code></em>
 set. Differing values are then copied from
<em class="parameter"><code>src</code></em>
 to <em class="parameter"><code>dest</code></em>
. If <em class="parameter"><code>flags</code></em>
 is 0, all differing read/write properties.</p>
<p>Properties marked as "construct-only" are not touched.</p>
<p>If the two objects are not of the same type, only properties that
exist in both object classes and are of the same value_type are
synchronized</p>
<div class="refsect3">
<a name="gimp-config-sync.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>src</p></td>
<td class="parameter_description"><p>a <span class="type">GObject</span></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>dest</p></td>
<td class="parameter_description"><p>another <span class="type">GObject</span></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>a mask of GParamFlags</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gimp-config-sync.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>dest</code></em>
was modified, <code class="literal">FALSE</code> otherwise</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-4.html#api-index-2.4">2.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-config-reset-properties"></a><h3>gimp_config_reset_properties ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_config_reset_properties (<em class="parameter"><code><span class="type">GObject</span> *object</code></em>);</pre>
<p>Resets all writable properties of <em class="parameter"><code>object</code></em>
 to the default values as
defined in their <span class="type">GParamSpec</span>. Properties marked as "construct-only"
are not touched.</p>
<p>If you want to reset a <a class="link" href="libgimpconfig3-GimpConfig.html#GimpConfig" title="GimpConfig"><span class="type">GimpConfig</span></a> object, please use <a class="link" href="libgimpconfig3-GimpConfig.html#gimp-config-reset" title="gimp_config_reset ()"><code class="function">gimp_config_reset()</code></a>.</p>
<div class="refsect3">
<a name="gimp-config-reset-properties.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>a <span class="type">GObject</span></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-4.html#api-index-2.4">2.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-config-reset-property"></a><h3>gimp_config_reset_property ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_config_reset_property (<em class="parameter"><code><span class="type">GObject</span> *object</code></em>,
                            <em class="parameter"><code>const <span class="type">gchar</span> *property_name</code></em>);</pre>
<p>Resets the property named <em class="parameter"><code>property_name</code></em>
 to its default value.  The
property must be writable and must not be marked as "construct-only".</p>
<div class="refsect3">
<a name="gimp-config-reset-property.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>a <span class="type">GObject</span></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>property_name</p></td>
<td class="parameter_description"><p>name of the property to reset</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-4.html#api-index-2.4">2.4</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gimp-config-string-append-escaped"></a><h3>gimp_config_string_append_escaped ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gimp_config_string_append_escaped (<em class="parameter"><code><span class="type">GString</span> *string</code></em>,
                                   <em class="parameter"><code>const <span class="type">gchar</span> *val</code></em>);</pre>
<p>Escapes and quotes <em class="parameter"><code>val</code></em>
 and appends it to <em class="parameter"><code>string</code></em>
. The escape
algorithm is different from the one used by <code class="function">g_strescape()</code> since it
leaves non-ASCII characters intact and thus preserves UTF-8
strings. Only control characters and quotes are being escaped.</p>
<div class="refsect3">
<a name="gimp-config-string-append-escaped.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>string</p></td>
<td class="parameter_description"><p>pointer to a <span class="type">GString</span></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>val</p></td>
<td class="parameter_description"><p>a string to append or <code class="literal">NULL</code></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-4.html#api-index-2.4">2.4</a></p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.33.0</div>
</body>
</html>